let userInfo = {}
const db = wx.cloud.database()
Component({
  /**
   * 组件的属性列表
   */
  properties: {
    blogId: String,
    blog: Object,
    commentnum: String
  },
  externalClasses: ['iconfont', 'icon-dianzan','icon-pinglun', 'icon-share'],

  /**
   * 组件的初始数据
   */
  data: {
    // 登录组件是否显示
    loginShow: false,
    // 底部弹出层是否显示
    modalShow: false,
    content: '',
    blog: {},
    commentnum: [],
    blogId: ''

  },


  lifetimes: {
    attached: function() {
      // 页面被展示
      wx.cloud.callFunction({
        name: 'blog',
        data: {
          blogId: this.data.blogId,
          $url: 'detail',
        }
      }).then((res) => {
        let commentnum = res.result.commentList.data.length
        this.setData({
          commentnum,
        })
      })
    },
    hide: function() {
      // 页面被隐藏
    },
  },

  /**
   * 组件的方法列表
   */
  methods: {
    onComment() {
      // 判断用户是否授权
      wx.getSetting({
        success: (res) => {
          if (res.authSetting['scope.userInfo']) {
            wx.getUserInfo({
              success: (res) => {
                userInfo = res.userInfo
                // 显示评论弹出层
                this.setData({
                  modalShow: true,
                })
              }
            })
          } else {
            this.setData({
              loginShow: true,
            })
          }
        }
      })
    },

    onLoginsuccess(event) {
      //即使用户已经授权，也可以获取到用户的头像和昵称
      userInfo = event.detail
      // 授权框消失，评论框显示
      this.setData({
        loginShow: false,
      }, () => {
        this.setData({
          modalShow: true,
        })
      })
    },

    onLoginfail() {
      wx.showModal({
        title: '授权用户才能进行评价',
        content: '',
      })
    },

    onInput(event){
      this.setData({
        content: event.detail.value
      })

    },
    onSend(event){
      console.log(event)
      //插入数据库
      let content = this.data.content
      if (content.trim() === '') {
        wx.showModal({
          title: '评论内容不能为空',
          content: '',
        })
        return
      }
      wx.showLoading({
        title: '评论中',
        mask: true,
      })
      db.collection('blog-comment').add({
        data: {
          content,
          createTime: db.serverDate(),//服务端时间
          blogId: this.properties.blogId,
          nickName: userInfo.nickName,
          avatarUrl: userInfo.avatarUrl
        }
      }).then((res)=>{
        wx.hideLoading()
        wx.showToast({
          title:'评论成功',
          icon: 'success',
        })
        this.setData({
          modalShow: false,
          content: '',
        })
        // 父元素刷新评论页面
        this.triggerEvent('refreshCommentList')

      })

    },
  }

})
